/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Entidades;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 *
 * @author diego
 */
@Entity
@Table(name = "JornadaLaboral")
public class JornadaLaboral implements Serializable {

    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Basic(optional = false)
    @Column(name = "idJornadaLaboral")
    private Integer idJornadaLaboral;
    @Column(name = "descripcionJornada")
    private String descripcionJornada;
    @Column(name = "hsEntradaJL")
    @Temporal(TemporalType.TIME)
    private Date hsEntradaJL;
    @Column(name = "hsSalidaJL")
    @Temporal(TemporalType.TIME)
    private Date hsSalidaJL;
    @Column(name = "nombreJL")
    private String nombreJL;
    @Column(name = "tolerancia")
    private Integer tolerancia;
    @Column(name = "vigenteJL")
    private Boolean vigenteJL;
    @OneToMany(mappedBy = "idJornadaLaboral")
    private List<EmpleadoJornada> jlLista;

    public List<EmpleadoJornada> getJlLista() {
        return jlLista;
    }

    public void setJlLista(List<EmpleadoJornada> jlLista) {
        this.jlLista = jlLista;
    }

    public JornadaLaboral() {
    }

    public JornadaLaboral(Integer idJornadaLaboral) {
        this.idJornadaLaboral = idJornadaLaboral;
    }

    public Integer getIdJornadaLaboral() {
        return idJornadaLaboral;
    }

    public void setIdJornadaLaboral(Integer idJornadaLaboral) {
        this.idJornadaLaboral = idJornadaLaboral;
    }

    public String getDescripcionJornada() {
        return descripcionJornada;
    }

    public void setDescripcionJornada(String descripcionJornada) {
        this.descripcionJornada = descripcionJornada;
    }

    public Date getHsEntradaJL() {
        return hsEntradaJL;
    }

    public void setHsEntradaJL(Date hsEntradaJL) {
        this.hsEntradaJL = hsEntradaJL;
    }

    public Date getHsSalidaJL() {
        return hsSalidaJL;
    }

    public void setHsSalidaJL(Date hsSalidaJL) {
        this.hsSalidaJL = hsSalidaJL;
    }

    public String getNombreJL() {
        return nombreJL;
    }

    public void setNombreJL(String nombreJL) {
        this.nombreJL = nombreJL;
    }

    public Integer getTolerancia() {
        return tolerancia;
    }

    public void setTolerancia(Integer tolerancia) {
        this.tolerancia = tolerancia;
    }

    public Boolean getVigenteJL() {
        return vigenteJL;
    }

    public void setVigenteJL(Boolean vigenteJL) {
        this.vigenteJL = vigenteJL;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (idJornadaLaboral != null ? idJornadaLaboral.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof JornadaLaboral)) {
            return false;
        }
        JornadaLaboral other = (JornadaLaboral) object;
        if ((this.idJornadaLaboral == null && other.idJornadaLaboral != null) || (this.idJornadaLaboral != null && !this.idJornadaLaboral.equals(other.idJornadaLaboral))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return nombreJL;
    }
}
